![]() |
![]() |
Set funkcije su ili vanjske funkcije ili funkcije
na osi su:
·
Funkcije koje
se uvijek primjenjuju na cijeli set na jednoj osi (redovi ili stupci),
Lista trenutačno podržanih funkcija u
dizajneru:
CubePlayer
funkcije |
MDX
funkcije korištene za izradu CubePlayer
funkcija |
Najboljih
N |
Odgovara
MDX funkciji TopCount |
Najboljih
N u sumi |
Odgovara
MDX funkciji TopSum |
Najboljih
N u % |
Odgovara
MDX funkciji TopPercent |
Najlošijih
N |
Odgovara
MDX funkciji BottomCount |
Najlošijih
u sumi |
Odgovara
MDX funkciji BottomSun |
Najlošijih
N u % |
Odgovara
MDX funkciji BottomPercent |
Poredaj |
Odgovara
MDX funkciji Order |
Poredaj
po abecedi |
Kombinacija
Order funkcije i
uvjeta |
Poredaj
po hijerarhiji |
Odgovara
MDX funkciji Hierachize |
Filtar |
Odgovara
MDX funkciji Filter |
Ukloni |
Kombinacija
Filter (i NOT članovi
…) |
Prvih
N |
Odgovara
MDX funkciji Head |
ZadnjihN |
Odgovara
MDX funkciji Tail |
Doprinosi |
Posebna
sintaksa |
Za
svakog iz prethodne dimenzije |
Implementacija
MDX Generate
funkcije |
Bez
praznih |
Non
Empty |
Kada god primijenite vanjsku funkciju
na redove ili kolone CubePlayer će vas obavijestiti promjenom
ikone:
·
Ako funkcija nije primijenjena ikona
će biti
·
Ako funkcija je primijenjena ikona će
biti
SET FUNKCIJE
(FUNKCIJE NA OSI)
Funkcije na osi
uvijek se primjenjuju na cijelu os bez obzira na broj dimenzija/hijerarhija na
osi.
Primjer
Imamo razinu State Province u stupcima
Primijenit ćemo
TopCount
100 (Najboljih 100) na cijeloj osi.
SELECT
NON
EMPTY
TopCount
(
{
[Customer].[hCountry].[State Province].MEMBERS
}
,100, [Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
Sada dodajmo još
jednu dimenziju/hijerarhiju, recimo Product Family. Ona će biti pridodana
automatski unutar funkcije TopCount.:
SELECT
NON
EMPTY
TopCount
(
CrossJoin
(
{
[Customer].[hCountry].[State Province].MEMBERS
},
{
[Product].[hProduct].[Product Family].MEMBERS
}
)
,100,
[Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]
Isto će se
dogoditi kad dodamo treću dimenziju:
SELECT
NON
EMPTY
TopCount
(
CrossJoin
(
CrossJoin
(
{
[Customer].[hCountry].[State Province].MEMBERS
},
{
[Product].[hProduct].[Product Family].MEMBERS
}
),
{
[Store].[hStoreType].[Store Type].MEMBERS
}
)
,100,
[Measures].[Store Sales]
)
ON
AXIS(0)
FROM
[Sales]